<template>
	<view class="content">
		<tn-toast ref="toast"></tn-toast>
		<!-- 正面 -->
		<jianweikaifa-idCardShooting :isFront="1" @idCardData="getIdCardData" :requestSuccess="requestSuccess" @close="getClose">
		</jianweikaifa-idCardShooting>
		<view style="text-align: center;margin-bottom: 40rpx;">身份证正面</view>
		<!-- 反面 -->
		<jianweikaifa-idCardShooting :isFront="0" @idCardData="getIdCardDatadown" @close="getClose">
		</jianweikaifa-idCardShooting>
		<view style="text-align: center;">身份证反面</view>
		 <tn-modal @click="sure()" v-model="show" :title="title" :content="content" :button="button"></tn-modal>
		<view class="submit" style="margin-top: 150rpx;">
			<view class="submit_btn" @click="submit()">
				<span>提交信息</span>
			</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				requestSuccess: true, // 初始化请求结果为 false
				title: 'Hello',
				phoneNumber: '',
				  show: false,
				        title: '身份确认',
				        content: '确认之后将无法进行修改',
						button: [{
						            text: '取消',
						            backgroundColor: '#E6E6E6',
						            fontColor: '#333333',
						            plain: true,
						            shape: 'round'
						          },
						          {
						            text: '确定',
						            backgroundColor: 'tn-bg-indigo',
						            fontColor: '#FFFFFF'
						          }
						        ]
			}
		},
		onLoad() {
			this.phoneNumber = uni.getStorageSync('phoneNumber');
		},
		methods: {
			clearData() {
			      // 清空数据的逻辑
			      // 例如：
			      this.showData = '';
			    },
			 submit() {
				
			        this.show = true;
			      },
				  sure(index){
					  if(index.index==0){
						 this.show = false; 
					  }else{
						 uni.reLaunch({
						     url: '../regist/regist'
						 }); 
					  }
					   console.log(index,'index')
					  
				  },
			getIdCardDatadown(data) {
				var that = this;
			
				console.log(data) //返回tempFilePath 和isFont
				// 获取图片信息
				wx.getImageInfo({
					src: data.tempFilePath,
					success: function(res) {
						// 获取图片临时路径
						var tempFilePath = res.path;
			
						// 通过文件系统管理器保存文件
						wx.getFileSystemManager().saveFile({
							tempFilePath: tempFilePath,
							success: async function(res) {
								// 成功保存文件，res.savedFilePath 包含了保存后的文件路径
								var savedFilePath = res.savedFilePath;
			
								// 将文件转换为 Base64 字符串
								console.log(savedFilePath, 'savedFilePath')
								wx.getFileSystemManager().readFile({
									filePath: savedFilePath,
									encoding: 'base64',
									success: async function(res) {
										// 文件读取成功，将文件数据转换为 FormData 格式
										var fileData = res.data; // Base64 编码的文件数据
										var fileSuffix = savedFilePath.split('.')
											.pop(); // 获取文件后缀
			
										// 构建 FormData 对象
										var formData = {
											file: 'data:image/' + fileSuffix +
												';base64,' + fileData // 添加文件类型信息
										};
										console.log(formData.file, 'formData')
								
			
										try {
											const url =
												'/portal/r/w?cmd=com.apps.sfeg.srm.register'; // 替换为你的 API 地址
											const params = {
												// 构造你的请求参数
												falg: '2',
												base64: formData.file,
												boId: uni.getStorageSync('BOID'),
												mobile: that.phoneNumber
											};
			
											// 发送 GET 请求
											const response = await that.$postimg(url,
												params);
											console.log('请求成功11国徽', response);
										uni.setStorageSync('DOWNLOADURLDown', response.data.DOWNLOADURL);
											
			
										} catch (error) {
											// 处理请求失败的逻辑
											console.error('请求失败', error);
										}
									},
									fail: function(err) {
										// 文件读取失败处理逻辑
										console.error('文件读取失败', err);
									}
								});
							},
							fail: function(err) {
								// 处理失败情况
								console.error('保存文件失败', err);
							}
						});
					},
					fail: function(err) {
						// 处理失败情况
						console.error('获取图片信息失败', err);
					}
				});
			},
			getIdCardData(data) {
				var that = this;

				console.log(data) //返回tempFilePath 和isFont
				// 获取图片信息
				wx.getImageInfo({
					src: data.tempFilePath,
					success: function(res) {
						// 获取图片临时路径
						var tempFilePath = res.path;

						// 通过文件系统管理器保存文件
						wx.getFileSystemManager().saveFile({
							tempFilePath: tempFilePath,
							success: async function(res) {
								// 成功保存文件，res.savedFilePath 包含了保存后的文件路径
								var savedFilePath = res.savedFilePath;

								// 将文件转换为 Base64 字符串
							
								wx.getFileSystemManager().readFile({
									filePath: savedFilePath,
									encoding: 'base64',
									success: async function(res) {
										// 文件读取成功，将文件数据转换为 FormData 格式
										var fileData = res.data; // Base64 编码的文件数据
										var fileSuffix = savedFilePath.split('.')
											.pop(); // 获取文件后缀

										// 构建 FormData 对象
										var formData = {
											file: 'data:image/' + fileSuffix +
												';base64,' + fileData // 添加文件类型信息
										};
									
								
										
										try {
											const url =
												'/portal/r/w?cmd=com.apps.sfeg.srm.register'; // 替换为你的 API 地址
											const params = {
												// 构造你的请求参数
												falg: '1',
												base64: formData.file,
												boId: uni.getStorageSync('BOID'),
												mobile: that.phoneNumber
											};

											// 发送 GET 请求
											const response = await that.$postimg(url,
												params);
										
											if(response.result=='ok' ){
													
													if(response.data.ID_CARD !='' || response.data.USER_NAME !=''){
															uni.setStorageSync('AGE', response.data.AGE);
															uni.setStorageSync('BOID', response.data.BOID);
															uni.setStorageSync('DOWNLOADURL', response.data.DOWNLOADURL);
																uni.setStorageSync('DOWNLOADURLName', response.data.ID_ATTACHMENT);
															uni.setStorageSync('ID_CARD', response.data.ID_CARD);
															uni.setStorageSync('IMG_NAME', response.data.IMG_NAME);
															uni.setStorageSync('NATION', response.data.NATION);
															uni.setStorageSync('SEX', response.data.SEX);
															uni.setStorageSync('SF_GL', response.data.SF_GL);
															uni.setStorageSync('SID', response.data.SID);
															uni.setStorageSync('USER_NAME', response.data.USER_NAME);
															uni.setStorageSync('BOID', response.data.BOID);
													}else{
														  that.requestSuccess = false;
													uni.removeStorageSync('DOWNLOADURL');

														that.$refs.toast.show({
																												
															content:'身份证号未正确识别',
															icon: 'error', // 不显示图标
															duration: 2000 // 显示时长 2000ms
														});
														
														
													}
											}else{
												console.log('55555')
												that.$refs.toast.show({
																										
													content:'身份证未正确上传',
													icon: 'error', // 不显示图标
													duration: 2000 // 显示时长 2000ms
												});
												
												  that.requestSuccess = false;
											}
										
											

										} catch (error) {
											// 处理请求失败的逻辑
											console.error('请求失败', error);
										}
									},
									fail: function(err) {
										// 文件读取失败处理逻辑
										console.error('文件读取失败', err);
									}
								});
							},
							fail: function(err) {
								// 处理失败情况
								console.error('保存文件失败', err);
							}
						});
					},
					fail: function(err) {
						// 处理失败情况
						console.error('获取图片信息失败', err);
					}
				});
			},
			getClose(data) {
				console.log(data) //返回isFont
			}
		}
	}
</script>

<style lang="scss" scoped>
	.submit_btn {
		text-align: center;
		margin-top: 109rpx;

		span {
			font-family: PingFang SC;
			font-weight: bold;
			font-size: 40rpx;
			color: #FFFFFF;
			background: linear-gradient(90deg, #3A84FD 0%, #536AFF 100%);
			border-radius: 20rpx;
			padding: 25rpx 261rpx;
		}
	}
</style>